home *** CD-ROM | disk | FTP | other *** search
/ Gold Medal Software 3 / Gold Medal Software - Volume 3 (Gold Medal) (1994).iso / utils1 / file100.arj / FILE.DOC < prev    next >
Text File  |  1994-02-22  |  16KB  |  450 lines

  1.     Manual for FILE 1.0, (C) 1993-94 by Fefe Soft
  2.  
  3.  
  4.  
  5.                              =[  Introduction  ]=
  6.  
  7.     FILE  is the  best file  recognizer known  to me,  and I  am collecting
  8.     things like  that. File's job  is to analyze  files you give  to it and
  9.     then tell you what it found out about the file. FILE's syntax is:
  10.  
  11.       FILE [-?] [-k] [-o] [-f] [filespec [filespec...]]
  12.  
  13.     FILE without parameters analyzes all files in the current directory.
  14.     The -k parameter tells FILE not to touch unwanted files.
  15.     The -o parameter lets FILE output the size and CRC-32 of the files.
  16.     The -f parameter  tells FILE not to ask you  if it should kill unwanted
  17.     files.
  18.  
  19.     FILE's filespecs are  more advanced DOS filespecs, that  is, "A*B" will
  20.     match "ARB" and not "ATC" like under DOS.
  21.  
  22.  
  23.                               =[  Disclaimer  ]=
  24.  
  25.     I have done  nearly everything to  insure FILE's proper  functionality,
  26.     but I cannot assume any liability  for any damage resulting directly or
  27.     indirectly from use or not use of  FILE or any other Fefe Soft product.
  28.     Neither  can  I  guarantee  FILE's  functionality  or  fitness  for any
  29.     purpose.  There  is  no  money-back-guarantee,  since  this  program is
  30.     ShareWare, i.e. you can test it before you buy for it, I won't give any
  31.     money back.
  32.  
  33.     Especially concerning FILE, much is  guesswork. Almost everything I use
  34.     here is found out empirically, that is, I tried it on a few samples and
  35.     then concluded  that it works in  general. Of course, this  *may* work,
  36.     but it may *not* work. So don't trust FILE 100% !
  37.  
  38.     If you find  something you want FILE to recognize,  then SEND ME A COPY
  39.     (my Internet  account: leitner@inf.fu-berlin.de, or  via Snail Mail  to
  40.     the address below. Even more important:  If you find that FILE is wrong
  41.     (not counting  text files, because this  is the best heuristics  can do
  42.     when only  analyzing the first 512  bytes of the files),  please let me
  43.     know and send me the sample.
  44.  
  45.     However,  if you  have any  problem which  cannot be  solved with  this
  46.     manual or  if you have  any suggestion what  this program should  do or
  47.     should not do then write me :
  48.  
  49.                  Felix von Leitner
  50.                  Gervinusstrasse 22
  51.                  Tel: +49-30-32700270  ISDN
  52.            10629 Berlin
  53.                  GERMANY
  54.  
  55.  
  56.                                =[  ShareWare  ]=
  57.  
  58.     You are allowed to test FILE 1  month, then you must decide if you want
  59.     to use FILE further, then you must register, or  not, then you must not
  60.     use it any longer.
  61.  
  62.     If you decide to register this great program, then send $20 or DM 30 to
  63.     the above adress or let your bank put the money on my account :
  64.  
  65.                  Name: Felix von Leitner
  66.            Account no: 5870043
  67.               bank ID: 100 700 00
  68.                  Bank: Deutsche Bank
  69.  
  70.     If you  register (and have an  Internet account), I will  notify you of
  71.     important updates. Nothing will happen to your FILE if you register it,
  72.     but you will take a heavy burden off your heart (hopefully) ;-)
  73.  
  74.  
  75.                                 =[  Install  ]=
  76.  
  77.     Put FILE into some path in your PATH= statement. That's all.
  78.  
  79.  
  80.                             =[  Unwanted files  ]=
  81.  
  82.     FILE recognizes several files I don't want on my system and asks if you
  83.     want it to kill  them for you. Those are tons of  BBS ads and - intros,
  84.     TheDraw COM files and 0-byte files with strange letters in their name.
  85.  
  86.     BTW: Just  because FILE knows  a BBS  ad  that doesn't mean  I know the
  87.     number of that  BBS or I even know  the BBS or I even  know the BBS ad,
  88.     since several people have contributed annoying files to me.
  89.  
  90.  
  91.                               =[  Debug info  ]=
  92.  
  93.     FILE recognizes  Borland and MicroSoft debug  info. If it finds  it, it
  94.     asks you if you want it removed. If you are not the programmer, you can
  95.     safely throw away debug info and save a few bytes on your hard disk.
  96.  
  97.  
  98.                                 =[  Wanted  ]=
  99.  
  100.     Things I am especially interested in :
  101.  
  102.       - EXE packers FILE doesn't know
  103.       - Image formats FILE doesn't know
  104.       - Sound formats FILE doesn't know
  105.       - Word processor file formats FILE doesn't know
  106.  
  107.     If you have something to contribute, please send it to me.
  108.  
  109.  
  110.                                 =[  Purpose  ]=
  111.  
  112.     You just  unzipped a demo called  LAMEDEMO which contains a  nice sound
  113.     module. But  the demo contains  100 files, called  LAMEDEMO.000 through
  114.     .099, and  you want to know  which one is the  module. FILE can analyze
  115.     all the files and find out which ones are modules, which ones are GIFs.
  116.  
  117.     Since FILE  recognizes many popular compilers'  executables, it can act
  118.     as half-secure  link virus checker.  It won't find  some stealth virii,
  119.     and it doesn't know all compilers. But if FILE says the executable is a
  120.     Borland Pascal executable, you can be pretty sure it does not contain a
  121.     virus.
  122.  
  123.     Of  course, this  program can  be used  malevolently, by  a cracker who
  124.     wants  to know  which EXE  packer or  crypter you  used to protect your
  125.     program. But  reveiling which method  you used does  not unprotect your
  126.     file, so FILE does not really cause harm.
  127.  
  128.  
  129.                                =[  Features  ]=
  130.  
  131.     FILE is so  feature loaded that I put  this section at the end  of this
  132.     document.
  133.  
  134.     Historically, FILE was an EXE analyzer.  Then I added other file types,
  135.     like sound files, graphics files, text files, and finally, BBS ads.
  136.  
  137.     FILE recognizes  tons of BBS  ads, including 0-byte  files with strange
  138.     characters  in the  name, and  some BBS  intros (including TheDraw .COM
  139.     files) as  unwanted and asks you  whether it should kill  them for you.
  140.     Since there exist thousands of BBSs,  many of them putting annoying BBS
  141.     ads into their archives, FILE will  never recognize ALL of them. But if
  142.     you find some FILE doesn't recognize, feel free to send it to me.
  143.  
  144.     FILE recognizes these EXE file types :
  145.  
  146.       - LHarc SFX
  147.         other SFX's have a SFX executable and the archive as overlay
  148.         since FILE analyzes overlays separately, so you might see :
  149.           PKLite 1.20 DOS executable; ZIP archive
  150.  
  151.       - Diet 1.0
  152.       - Diet 1.44d
  153.       - Diet 1.45f
  154.  
  155.       - PKLite 1.03
  156.       - PKLite 1.12
  157.       - PKLite 1.14/1.15
  158.       - PKLite 1.20
  159.       - PKLite a.b               send me this file !
  160.       - PKLite -e x.y            send me this file !
  161.  
  162.       - COMPACK 4.4/4.5
  163.         Almost identical, but 4.4 crashes on 486s
  164.  
  165.       - Ady''s glue
  166.         I think this one is rather a scrambler than a compressor
  167.  
  168.       - PGMPAK 0.15ß             send me other versions !
  169.  
  170.       - PROPACK                  send me the file !
  171.       - PRO-PACK 2.8
  172.  
  173.       - PROTECT! 1.0             send me other versions !
  174.       - PROTECT! 5.0
  175.  
  176.       - TINYPROG
  177.       - TINYPROG /P
  178.         The /P option encrypts the files with a password
  179.  
  180.       - Cruncher
  181.         creates a loader with the compressed data as overlay
  182.  
  183.       - EXEPACK (several versions)
  184.         there are more than 10 variants of EXEPACK, FILE finds the ones
  185.         I have encountered.
  186.  
  187.       - KVETCH 1.02ß             send me other versions !
  188.  
  189.       - LZEXE 0.91 or 1.0a       send me other versions !
  190.       - LZEXE 0.90
  191.  
  192.       - fake 'PK' loader from UNP
  193.  
  194.       - f-Shield
  195.         anti-viral shield from McAfee
  196.  
  197.  
  198.       - Borland Pascal executable
  199.         this one analyzes the code, and does NOT use the 'Runtime error'
  200.         string or the Borland (C) notice !
  201.       - Borland 16-bit DPMI executable
  202.  
  203.       - MicroSoft [Quick] C executable
  204.       - MicroSoft C executable
  205.       - MicroSoft Quick C executable
  206.         If you  know more about these  cathegories (different memory models
  207.         or different versions or whatever) tell me about it !
  208.  
  209.       - Metaware High C executable
  210.  
  211.       - Turbo C executable
  212.       - Turbo C  starting with JMP (small model ?)
  213.       - Turbo C[++] executable
  214.         See the MicroSoft C family
  215.  
  216.       - Turbo Basic executable
  217.  
  218.       - Intel Code Builder 32-bit executable
  219.         This is a 32-bit protected mode C compiler from Intel
  220.  
  221.       - Phar Lap stub
  222.         This is a small program which loads the Phar Lap DOS extender
  223.         which in turn executes the program
  224.       - old style Phar Lap protected mode executable
  225.       - Phar Lap flat/multi-segment executables
  226.  
  227.       - emx 0.8g 32-bit executable
  228.       - emx 0.8h stubbed executable
  229.       - emx 0.8h 32-bit executable
  230.         emx is the 32-bit DOS extender from Eberhard Mattes' port of GNU C
  231.         to DOS and OS/2
  232.  
  233.       - go32 32-bit executable
  234.       - go32 1.11
  235.       - go32 1.11 with program
  236.       - go32 1.??
  237.       - go32 1.?? with program
  238.         go32 is the 32-bit DOS extender from DJ Delorie's port of GNU C
  239.         to DOS
  240.  
  241.       - CODE32 32-bit executable
  242.         CODE32 is  a 32-bit DOS  extender by Tran  of Renaissance for  100%
  243.         assembly language programs
  244.  
  245.       - DOS4GW executable
  246.         DOS4GW is a 32-bit DOS extender from Rational Systems
  247.         Watcom C/C++ creates DOS4GW executables
  248.  
  249.       - 16 and 32 bit, Windoze or OS/2, applications or DLLs
  250.  
  251.       - Win32 portable executable
  252.  
  253.  
  254.     FILE recognizes DOS device drivers (COM or EXE flavors)
  255.  
  256.  
  257.     FILE recognizes these COM files :
  258.       - COMPACK 4.4
  259.       - COMPACK 4.5
  260.  
  261.       - Diet 1.0
  262.       - Diet 1.02
  263.       - Diet 1.20
  264.       - Diet 1.44
  265.  
  266.       - Ady's glue
  267.       - PROPACK 2.8
  268.       - ICE 1.0
  269.       - PKLite
  270.       - SHRINK 1.0
  271.       - SCRNCH 1.0
  272.  
  273.       - MicroSoft [Quick] C
  274.       - Self-applying Patch
  275.       - TheDraw COM file
  276.       - TXT2COM COM file
  277.  
  278.       - generic COM files (using a heuristic, not the .COM extension !)
  279.  
  280.  
  281.  
  282.     FILE recognizes these code, debug info and ressource files :
  283.       Amiga ProTracker 2.3A module loader
  284.       DJGPP .o file
  285.         DJGPP is DJ Delories port of GNU C to DOS
  286.       COFF
  287.         COFF means Common Output File Format and is the format of the
  288.         DJGPP's code which is executed by it's loader go32
  289.       Turbo Pascal 6.0 Unit
  290.       Borland Pascal 7.0 Unit
  291.       OBJect
  292.         This is only based on 1 (!) bytes, so it may be wrong !
  293.       Borland Overlay
  294.       Borland Ressource
  295.       Borland debug info
  296.       MicroSoft debug info
  297.         If you find a file whose overlay is a debug info, you can
  298.         safely cut it away
  299.       Borland Graphics Interface Driver
  300.       TP6 BGI driver
  301.  
  302.       DIGPAK driver: Advanced Gravis UltraSound
  303.       MIDPAK driver: Advanced Gravis UltraSound
  304.       WAVE-Miles Driver: Forte UltraSound(TM) Digital Sound
  305.       MIDI-Miles Driver: Advanced Gravis UltraSound Card
  306.  
  307.  
  308.     FILE recognizes these images, fonts and movies :
  309.       TeX DeVice Independant bitmap
  310.         TeX is a typesetting language by Donald Knuth
  311.       Windoze 640x480 24-bit bitmap
  312.       640x480 GIF87a image
  313.       640x480 GIF89a image
  314.         GIF is the Graphics Interchange Format from Compu$erve
  315.         I can't detect the number of colors yet
  316.       TIFF image
  317.         Tag Image File Format
  318.         I can't detect the number of colors and the TIFF type
  319.       640x480 JFIF image
  320.         I think JPEG files are always 24-bit
  321.       640x512 24 bit IFF ILBM image
  322.       640x512 8 bit IFF Portable Bitmap
  323.       640x480 PCX image
  324.         PCX detection is not very reliable
  325.       OS/2 AVI movie
  326.         I have been told that Video for Windows uses this format, too
  327.       3d Studio mesh
  328.         3d-Studio is a modeller and renderer for DOS
  329.       Borland Graphics Interface vector font
  330.  
  331.  
  332.     FILE recognizes these help and word processor files :
  333.       Borland Pascal help file
  334.       Windows help file
  335.       OS/2 help file / book
  336.       WordPerfect text file ?
  337.         I'm not sure about this, since I don't know anyone who owns
  338.         WordPerfect.
  339.       Windoze WRITE text file
  340.       WinWord text file
  341.         This is a guess, too. Please tell me about versions etc.
  342.  
  343.  
  344.     FILE recognizes these archives and compressed files :
  345.       ARJ archive
  346.       ZIP archive
  347.       PKZIP 1.1 SFX archive (this happens only as overlay)
  348.       LHA archive
  349.       LIMIT archive
  350.       HA archive
  351.         HA is Harry's Archiver ?
  352.       UC2 archive
  353.         UC2 is UltraCompressor ][
  354.       HAP archive
  355.         PAH is the decompressor for HAP
  356.       HPACK archive
  357.       TeleDisk file
  358.         TeleDisk can produce a file with an exact copy of a diskette
  359.       gzipped
  360.         gzip is GNU Zip, the compressor from the GNU project
  361.       'compress'ed
  362.         compress is the UNIX LZW compress program
  363.       PowerPacker packed file
  364.         PowerPacker is an Amiga compressor. Occasionally you can find
  365.         sound modules compressed with it
  366.       could be a TAR archive
  367.         the heuristic has become quite reliable now
  368.  
  369.  
  370.     FILE recognizes these sound files :
  371.       .CMF Creative Music tune
  372.       .ROL FM tune
  373.         These are FM (Adlib) music files
  374.       General MIDI tune
  375.  
  376.       MultiTracker 1.0 Module "blah"
  377.       UltraTracker Module "blah"
  378.       Scream Tracker 3.0 tune "blah"
  379.       Delusion DMF "blah"
  380.       Advanced Module Format "blah"
  381.       669 tune "blah"
  382.       extended 669 tune "blah"
  383.       LIQUID tune "blah"
  384.       Farandole Composer tune
  385.         These are all modules from PC trackers.
  386.         They include the tune and the sampled instruments
  387.  
  388.       Face The Music tune "blah"
  389.         This is an Amiga tracker (no playback on PC so far)
  390.       Oktalyzer module
  391.         This is an 8 channel Amiga tracker
  392.       MED module
  393.         Another Amiga tracker
  394.       31 sample MOD "blah"
  395.         These are Amiga 'M.K.' 4-channel MODs
  396.       4 channel MOD "blah"
  397.         These are Amiga 'FLT4' 4-channel MODs or
  398.         PC '4CHN' FastTracker MODs
  399.       6 channel FastTracker MOD "blah"
  400.       8 channel FastTracker MOD "blah"
  401.       8 channel Octalyzer MOD "blah"
  402.         Some Amiga tracker with 'OCTA' signature
  403.         Don't know if this is Octalyzer or OctaMED
  404.         or the other Octa-MOD is OctaMED ... enlighten me !
  405.       Unix 22.0 KHz .au audio file
  406.       VOC sound wave
  407.       22.0 KHz 16 bit stereo sound wave
  408.         this is the Windoze WAV format
  409.       Farandole Composer sample
  410.       Gravis UltraSound Patch file
  411.  
  412.  
  413.     FILE recognizes these text files :
  414.       ANSI files (including some unwanted BBS ads)
  415.  
  416.       UNIX style
  417.       MAC style
  418.       DOS style
  419.         This means how lines end. UNIX lines end with LF,
  420.         MAC lines end with CR, DOS lines end with CRLF
  421.  
  422.       "/bin/sh" script
  423.         These are UNIX shell scripts, "/bin/sh" is the shell
  424.  
  425.       C/C++ source code
  426.       PASCAL source code
  427.       HelpDK source file
  428.         HelpDK is the Help Development Kit from Ron Loewy, which
  429.         creates different help compilers' source files from your
  430.         HelpDK help file definition
  431.       POPHELP source file
  432.         POPHELP is a help file viewer from TurboPower software
  433.       LaTeX source file
  434.       Makefile
  435.         This is not very reliable, FILE may tell you about some
  436.         text files they are Makefiles
  437.       DOS/OS2 batch file
  438.       UNIX man page source file
  439.  
  440.     These  heuristics are  very good,  but because  FILE only  analyzes the
  441.     first 512 bytes of each file, they can never be perfect. So don't count
  442.     on FILE's  findings, the text file  recognition is rather a  gag than a
  443.     killer feature.
  444.  
  445.  
  446.  
  447.                            =[  Revision History  ]=
  448.  
  449.     1.0  first publicly available version
  450.